//基地址设置======================================================
axios.defaults.baseURL = 'http://ajax-api.itheima.net'
// 实例化一个提示框对象   引入的 tip 好看的弹框显示功能=================================================================
const myToast = new bootstrap.Toast(document.querySelector("#myToast"), {
    delay: 2000, // 显示多久后 自动消失
});
// console.log("myToast", myToast);
let tip
// 封装一个函数 函数名就叫 tip 
if (document.querySelector('#myToast .toast-body')) {
    tip = tip => {
        document.querySelector('#myToast .toast-body').innerHTML = tip
        myToast.show();
    }
}

// 点击小眼睛，切换密码框和输入框==================================================================
try {
    const eyes = document.querySelector('[name=password]')
    document.querySelector('.bi-eye-fill').onclick = () => {
        console.log(eyes.type);
        eyes.type == "password" ? eyes.type = "text" : eyes.type = "password";
    };
    setTimeout(() => {
        eyes.type = "password"
    }, 2000);
} catch (error) {
    // console.log("error" + error);
}

// 拦截器 试一下=================================================================
// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    // console.log("config", config);
    //标头添加 tonken 命令      
    try {
        if (localStorage.getItem("tonken1")) {
            config.headers.Authorization = localStorage.getItem("tonken1");
        }
    } catch (error) {
        console.log("error", error);
    }
    return config;
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    if (document.querySelector('#myToast .toast-body')) {
        tip(response.data.message + "🤩")//弹出好看的弹窗
    }
    //进行本地存储
    // console.log(response);
    try {
        if (response.data.data.token) {
            localStorage.setItem("tonken1", response.data.data.token)
        }
    } catch (error) {
        console.log("error", error);
    }
    // console.log("response", response.data.data.token);
    // debugger
    return response;
}, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    // console.dir(error);
    console.dir("error:::", error);
    try {
        tip(error.response.data.message + "😥")
    } catch (error) {
        tip("请求失败😥")
    }
    return Promise.reject(error);
});

//dom元素 获取===============================================================
try {
    const logout = document.querySelector('#logout')

    //退出按钮 点击事件 ===============================================================
    logout.addEventListener('click', function (e) {
        // console.log(1);
        //判断是否要退出
        if (confirm("你确定要退出吗")) {
            localStorage.removeItem("tonken1");//删除本地存储
            location.href = "login.html";//
        };
    });
} catch (error) {
    console.log("no logout");
};//退出按钮
// console.log(logout);

